package haemers.serializers.data 
{
	/**
	 * ...
	 * @author Jonathan
	 */
	[Serialize(name="object")]
	public class SerializeVO 
	{
		[Serialize(name="occupation")]
		public var job:String;
		
		private var _street:String;
		private var _country:String;
		private var _houseNumber:int;
		private var _id:uint;
		private var _name:String;
		
		/** Public methods **/
		[Serialize(params="street,country,housenumber")]
		public function addAddress(streetName:String, country:String, houseNumber:int=0):void
		{
			_street = streetName;
			_country = country;
			_houseNumber = houseNumber;
		}
		
		[Serialize(params = "lastname,firstname")]
		public function addName(lastName:String, firstName:String = ""):void
		{
			_name = firstName != "" ? lastName + ", " + firstName : lastName;
		}
		
		/** Getters & Setters **/
		[Serialize(name="objectId")]
		public function get id() : uint
		{
			return _id;
		}
		public function set id(value:uint) : void 
		{
			_id = value;
		}
		
		public function get street() : String
		{
			return _street;
		}
		
		public function get country() : String
		{
			return _country;
		}
		
		public function get houseNumber() : int
		{
			return _houseNumber;
		}
		
		public function get name() : String
		{
			return _name;
		}
		/** Protected methods **/
		
		/** Private methods **/
	}

}